In a communication system, channel encoding is generally used to improve reliability of data transmission and ensure communication quality. A Polar code is a good code which can achieve Shannon capacity by theoretical proof and has a low encoding and decoding complexity. If the code length is short, the performance of conventional successive cancellation (SC) decoding is worse than performances of a low density parity check (LDPC) code and a Turbo Code. In a case of decoding with list codes, the performance of the Polar code with medium code length is better than performances of the LDPC code or the Turbo Code.
The Polar code is a linear block code, and the generator matrix thereof is GN. The process of Polar code encoding is x1N=u1NGN, where x1N is an output bit after encoding, u1N is an input bit before encoding, GN=BNF⊗n. The code length N=2n, and n≥0. BN is a transposed matrix such as a bit reversal matrix. F⊗n is a Kronecker power (Kronecker power) of F, which is defined as F⊗n=F⊗F⊗n−1, where
  F  =            [                                    1                                0                                                1                                1                              ]        .  
The Polar code may be represented as (N, K, A, uAc) with a coset code, and the encoding process is x1N=uAGA(A)⊕uAcGN(Ac). A is an information bit index set GN(A) is a submatrix obtained from a row, which corresponds to the index in the set A, in GN. GN (Ac) is a submatrix obtained from a row, which corresponds to the index in the set Ac, in GN. uAc is Frozen bits the number of which is (N−K), with N being the code length and K being the length of information bits. For simplicity, the Frozen bit may be set to 0, and in this case, the above encoding process is briefly described as x1N=uAGN (A).
In the conventional technology, a Polar code with a code length being N and a code rate being R1 is represented as (N, K1, A1), a second Polar code with a code length being N and a code rate being R2 is represented as (N, K2, A2), and a Polar code with a code length being N and a code rate being R3 is represented as (N, K3, A3). Polar codes with a same code length and different code rates are represented differently. For example, a first Polar code with the code length being 2048 and the number of information bits being 683 is represented as (2048, 683, A1), where A1 is a subset including 683 elements of a set {0, 1, 2, . . . , 2047}. A second Polar code with the code length being 2048 and the number of information bits being 1024 is represented as (2048, 1024, A2), where A2 is a subset including 1024 elements of the set {0, 1, 2, . . . , 2047}. A1 and A2 include a large number of same elements. However, in the conventional technology, the first Polar code and the second Polar code need to be represented by A1 and A2 respectively, which causes a high overhead for representing the Polar code conventionally.